package com.bruce.common.utils;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class PatternUitl {
	/**
	 * 手机号码校验
	 * @param phone 手机号码
	 * @return
	 */
	static public boolean isPhone(String phone) {
		if (EmptyUtil.isEmpty(phone)) {
			return false;
		}
		Pattern p = Pattern.compile("^(1[0-9][0-9])\\d{8}$");
		Matcher m = p.matcher(phone);
		return m.matches();
	}

	/**
	 * 邮箱校验
	 * @param email 邮箱
	 * @return
	 */
	static public boolean isEmail(String email) {
		if (EmptyUtil.isEmpty(email)) {
			return false;
		}
		Pattern p = Pattern.compile("^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\\.([a-zA-Z0-9_-])+)+$");
		Matcher m = p.matcher(email);
		return m.matches();
	}

    /**
     * 是否是汉字
     *
     * @param src 字符串
     * @return boolean（true：是，false：不是）
     */
    public static boolean isCh(CharSequence src) {
        if (src == null || src.length() <= 0) {
            return false;
        }
        Pattern p = Pattern.compile("^[\u4e00-\u9fa5]+$");
        Matcher m = p.matcher(src);
        return m.matches();
    }

	/**
	 * 只含有字母、数字、下划线、减号
	 * @param str 字符串
	 * @return
	 */
	static public boolean isChEn(String str) {
		if (EmptyUtil.isEmpty(str)) {
			return false;
		}
		Pattern p = Pattern.compile("^[0-9a-zA-Z_-]+$");
		Matcher m = p.matcher(str);
		return m.matches();
	}

	/**
	 * 只含有汉字、数字、字母
	 * @param str 字符串
	 * @return
	 */
	static public boolean isChEnNum(String str) {
		if (EmptyUtil.isEmpty(str)) {
			return false;
		}
		Pattern p = Pattern.compile("^[a-zA-Z0-9\u4e00-\u9fa5]+$");
		Matcher m = p.matcher(str);
		return m.matches();
	}

    /**
     * 是否是纯数字
     * @param src 字符串
     * @return boolean（true：是，false：不是）
     */
    static public boolean isPureNum(String src){
        if (EmptyUtil.isEmpty(src)) {
            return false;
        }
        Pattern p = Pattern.compile("[0-9]+");
        Matcher m = p.matcher(src);
        return m.matches();
    }
}
